Exponential rise in number of communication devices, convergence and development of new Internet Protocol (IP) networks and IP-based services is leading the Internet world towards exhaustion of available Internet Protocol (IP) addresses. The existing Internet Protocol Version 4 (IPv4) supports only 32 bit IP address space. The emerging next generation IP, Internet Protocol Version 6 (IPv6) supports 128 bit address space to accommodate future demand for IP addresses. However, deployment of IPv6 is not backwards compatible with IPv4 and either both the protocols must be deployed or sophisticated tunneling and translation systems have to be set-up. Thus, migration to IPv6 at earliest is advisable. The deployment of IPv6 by migrating from IPv4 is long and complex integration process involving training, configuration, testing, management costs, cost of software and hardware upgrades and the like. Operational costs such as staff training is a major contributor in overall cost for upgrading to IPv6 since upgrading demands expertise. Moreover, lot of engineering and R&D effort goes in identifying the right strategy for upgrading a system or a product to IPv6.
Conventional mechanisms such as Network Address Translation-Protocol Translation (NAT-PT) only provide a stop gap arrangement for IPv4 to IPv6 migration scenario. Existing mechanisms for migration of legacy IPv4 code to IPv6 provide various standards and technology guidance to define the IPv6 networking technology and potential needs.
The existing methods provide code scanning procedures to detect IPv4 dependencies in the code to be migrated. An IPv4 dependency describes the changes or possible impact areas that an IPv4 compatible application must make so that it can operate in an IPv6 networking environment. With existing methods, once the IPv4 dependencies are identified, manual effort has to be put in for analyzing the impact of the detected IPv4 dependencies on the code. However, existing legacy codes being tightly coupled to IPv4, manually figuring out the overall impact of IPv4 dependency on the code of a system or product code is tedious and complex. Practically, very lower percentage of overall impact can be identified. Thus, lack of proper methodology for reducing IPv4 dependencies in the code translates to heavy spending by the organization in identifying the right path and solution for IPv6 migration.
Some existing methods provide an extent of automated detection of IPv4 dependencies using standard tools with common approach for code migration of certain system or product. However, these existing methods are unable to address most of the indirect IPv4 dependencies and require revisiting the code to discover such dependencies using trial and error approach. Some existing methods provide transformation work load requirement during migration to IPv6 by providing computation of effort required in general, but fail to provide context specific analysis.
In the light of above discussion, a system and method for automatically detecting IPv4 dependencies in the code to provide product or system context specific effort computation to the organization for IPv4 to IPv6 migration is appreciated.